import pandas as pd
df = pd.DataFrame({'商品':['苹果', '香蕉', '梨'],
                   '单价（元）':[5, 5, 4],
                   '销量（kg）':[100, None, None],
                   '库存（kg）':[50, None, 70]})
print('原始数据：\n', df)
print('检查缺失值：\n', df.isnull())
print('检查非缺失值：\n', df.notnull())
print('统计每列缺失值的个数：\n', df.isnull().sum())




import pandas as pd
df = pd.DataFrame({'商品':['苹果', '香蕉', '梨'],
                   '单价 (元)': [5, 5, 4],
                   '销量(kg)': [100, None, None],
                   '库存(kg)': [50, None, 70]})
print('原始数据: \n',df)
print('删除包含缺失值的行: \n',df.dropna())
print('删除包含缺失值的列: \n',df.dropna(axis=1))
print('删除少于3个非缺失值的行: \n',df.dropna(thresh=3))
print('删除库存列包含缺失值的行: \n',df.dropna(subset=['库存(kg)']))

import pandas as pd
df = pd.DataFrame({'商品':['苹果', '香蕉', '梨'],
                   '单价 (元)': [5, 5, 4],
                   '销量(kg)': [100, None, None],
                   '库存(kg)': [50, None, 70]})
print('原始数据: \n',df)
print('使用120替换所有缺失值: \n',df.fillna(120))
print('使用120,60分别替换销量，库存列的缺失值: \n',df.fillna({'销量(kg)': 120, '库存(kg)': 60}))
print('使用每列第一个缺失值前面的非缺失值替换该列的所有缺失值: \n',df.fillna(method='ffill'))
print('使用每列最后一个缺失值后面的非缺失值替换该列的所有缺失值: \n',df.fillna(method='bfill'))




import pandas as pd
df = pd.DataFrame({'商品':['苹果', '香蕉', '梨'],
                   '单价（元）':[5, 5, 4],
                   '销量（kg）':[100, None, None],
                   '库存（kg）':[50, None, 70]})
print('原始数据：\n', df)









